package nancal.mp.db.mongo.table

import java.io.*
import nbcp.base.db.*
import nbcp.base.comm.*
import nbcp.base.extend.*
import nbcp.base.enums.*
import nbcp.base.utils.*
import nbcp.myoql.db.*
import nbcp.myoql.db.comm.*
import nbcp.myoql.db.enums.*
import nbcp.myoql.db.mongo.*
import nbcp.myoql.db.mongo.base.*
import nbcp.myoql.db.mongo.component.*
import org.slf4j.LoggerFactory
import org.springframework.stereotype.*



class JenkinsBuildInfoMeta(private val parentPropertyName: String): MongoColumnName() {
    constructor(value: MongoColumnName) : this(value.toString()) {}
    /**
     * git分支
     */
    @nbcp.base.db.annotation.Cn(value = """git分支""")
    val gitBranch = mongoColumnJoin(this.parentPropertyName, "gitBranch")
    /**
     * 构建文件夹
     */
    @nbcp.base.db.annotation.Cn(value = """构建文件夹""")
    val buildFolder = mongoColumnJoin(this.parentPropertyName, "buildFolder")
    /**
     * 注册名
     */
    @nbcp.base.db.annotation.Cn(value = """注册名""")
    val appName = mongoColumnJoin(this.parentPropertyName, "appName")
    val location = mongoColumnJoin(this.parentPropertyName, "location")
    /**
     * 注册中文名
     */
    @nbcp.base.db.annotation.Cn(value = """注册中文名""")
    val appCnName = mongoColumnJoin(this.parentPropertyName, "appCnName")
    /**
     * 部署环境
     */
    @nbcp.base.db.annotation.Cn(value = """部署环境""")
    val targetEnv = mongoColumnJoin(this.parentPropertyName, "targetEnv")
    /**
     * 运行环境
     */
    @nbcp.base.db.annotation.Cn(value = """运行环境""")
    val profile = mongoColumnJoin(this.parentPropertyName, "profile")
    /**
     * 注册中心
     */
    @nbcp.base.db.annotation.Cn(value = """注册中心""")
    val msDeployEnvEnum = mongoColumnJoin(this.parentPropertyName, "msDeployEnvEnum")
    /**
     * K8s服务名,也是镜像名
     */
    @nbcp.base.db.annotation.Cn(value = """K8s服务名,也是镜像名""")
    val serviceName = mongoColumnJoin(this.parentPropertyName, "serviceName")
    val imageTagPrefix = mongoColumnJoin(this.parentPropertyName, "imageTagPrefix")
    /**
     * Jenkins构建版本号
     */
    @nbcp.base.db.annotation.Cn(value = """Jenkins构建版本号""")
    val buildNumber = mongoColumnJoin(this.parentPropertyName, "buildNumber")
    /**
     * 集群名
     */
    @nbcp.base.db.annotation.Cn(value = """集群名""")
    val clusterCode = mongoColumnJoin(this.parentPropertyName, "clusterCode")
    val isLib = mongoColumnJoin(this.parentPropertyName, "isLib")
    override fun toString(): String {
        return mongoColumnJoin(this.parentPropertyName).toString()
    }
}

